There is a need today for High-speed packet switching networks. Data transmission is now evolving, with a specific focus on applications and by integrating a fundamental shift in the customer traffic profile. Driven by the growth of the number of intelligent (programmable) workstations, the pervasive use of local area network interconnections, the distributed processing capabilities between workstations and super computers, the new applications and the integration of various and often conflicting structures—hierarchical versus peer to peer, wide versus local area networks, voice versus data—the data profile has become more bandwidth consuming, bursting, non-deterministic and requires more connectivity. Based on the above observations, there is a strong requirement for supporting distributed computing applications across high speed wide-area networks that can carry local area network communications, voice, video and traffic among channel attached hosts, business or engineering workstations, terminals, and small to large file server systems. This vision of a high speed multi-protocol network is the driver for the emergence of fast packet switching network architectures such as Networking BroadBand Services (NBBS) architecture in which data, voice, and video information is digitally encoded, chopped into small packets (of fixed or variable length) and transmitted through a common set of nodes and links. In this continuously evolving environment there still is and will be for the many years to come, a major requirement for transporting “legacy” data traffic, such as System Network Architecture (SNA) traffic across wide area networks.
An efficient transport of mixed traffic streams on very high speed lines means for these new network architectures, a set of strict requirements in terms of performance and resource consumption. The requirements are a very high throughput and a very short packet processing time, an efficient set of flow and congestion control mechanisms and, a very large flexibility to support a wide range of connectivity options.
The high-speed networks are very concerned with the throughput and processing time. As a matter of fact, one of the key requirements of high speed packet switching networks is to reduce the end to end delay in order to satisfy real time delivery constraints and to achieve the necessary high nodal throughput for the transport of voice and video. Increases in link speeds have not been matched by proportional increases in the processing speeds of communication nodes. The fundamental challenge for high speed networks such as those based on NBBS (Networking BroadBand Services) technologies is to minimize the packet processing time and to take full advantage of the high speed/low error rate technologies. Most of the transport and control functions provided by the new high bandwidth network architectures are performed on an end to end basis. The flow control and particularly the path selection and bandwidth management processes are managed by the access points of the network (where the NBBS Access Services reside), which reduces both the awareness and the functions of the intermediate nodes.
One other problem with high-speed networks is network congestion and flow control. Communication networks have at their disposal limited resources to ensure efficient packet transmissions. An efficient bandwidth management strategy is essential to take full advantage of a high speed network. While transmission costs per byte continue to drop year after year, these costs are likely to continue to represent the major expense of operating future telecommunication networks as the demand for bandwidth increases. Thus considerable efforts have been spent on designing flow and congestion control processes, bandwidth reservation mechanisms, routing algorithms to economically manage the network bandwidth. An ideal network should be able to transmit a useful traffic directly proportional to the traffic offered to the network and this as far as the maximum transmission capacity is reached. Beyond this limit, the network should operate at its maximum capacity whatever the demand is.
In high speed networks, the nodes must provide total connectivity. This includes attachment of the user devices, regardless of vendors or protocols, and the ability to have the end user communicate with any other device or group of devices (when justified or required). The network must support any type of traffic such as data (including “legacy” data), voice, video, fax, graphic or image related traffic. Nodes must be able to take advantage of all common carrier facilities and to be adaptable to a plurality of protocols. All needed conversions must be automatic and transparent to the end user.
The architectures of most high speed packet switching networks specify a set of generic services that offer end-to-end high bandwidth transport capabilities. The present application relates to transmissions in wide-area networks (WANs) based on the IBM's Networking BroadBand Services (NBBS) architecture described in International Business Machine publication “IBM International Technical Support Centers—Networking Broadband Services (NBBS)—Architecture Tutorial—GG24-4486-00” dated June 95. NBBS Services can be divided into three major areas which are the transport services, the network control services and the access services.
The Transport Services provide a common infrastructure to support the transfer of information across the network. They are not used directly but through the Access Services (Access Agents). The Transport Services can be divided into three distinct functions which are implemented in three layers consisting in the Logical Link Layer, a Network Connection Layer, and the various Transport Protocols.
The Network Control Services ensure that the Transport and Access Services operate reliably, efficiently, and as automatically as possible. They are used to control, allocate, and manage the resources of the network on a real-time basis. They also provide network operators with the various facilities that are needed to configure, operate, and maintain the network on a day-to-day basis. This includes facilities for monitoring the performance of the network, accounting for its usage, and resolving problems.
The Access Services (Access Agents) provide an interface between the common high speed network (or backbone network) and external devices or networks via access link interfaces. The Access Services enable a wide range of external devices to get access to the common infrastructure provided by the Transport Services.
Together, the Transport, Network Control and Access Services provide the capability to support communications between many different types of communicating devices through a common network infrastructure.
A major capability of most high speed networks is their ability to support a diverse range of high speed multimedia telecommunication services using common equipment. Each Access Service (also called Access Agent) provides the support for a particular set of telecommunication services—ATM (Asynchronous Transfer Mode), FR (Frame Relay), PCM (Pulse Code Modulation) voice, Circuit emulation, HDLC ((High-level Data Link Control) . . . —and enables those Access Agents to transport traffic across a common network. An Access Agent comprises three logically separate components which are the Protocol Agent (PA), the Directory Agent (DA) and the Connection Agent (CA). A Protocol Agent understands and interprets the access protocol (the System Network Architecture Protocol in the present application), a Directory Agent is in charge of locating resources across the network, and a Connection Agent (CA) establishes connections between Access Agents. Each NBBS network node contains one or many of these Access Agents, depending on the physical interfaces it attaches to and on the access protocols it understands and supports. Valid examples of access services are Frame Relay or Asynchronous Transfer Mode (ATM) Access Agents.
Data Link Switching (DLSw) protocol has been created to provide SNA connectivity over IP (Internet Protocol) networks and this standard protocol is described in RFC (Request For Comments) 1474 and 1795. A presentation of DLSw mechanisms and SNA protocols can be found in “SNA, APPN, HPR & TCP/IP INTEGRATION” by David G. Matusow (ISBN 076041051-8). SNA is a session oriented protocol. The DLSw design allows to satisfy the SNA requirements even though SNA nodes are in disjointed configurations, i.e not adjacent, but interconnected through an IP network. From an SNA node standpoint, nodes are directly interconnected (i.e logically adjacent) and have no perception or visibility of the TCP/IP network in between them. Data Link Switching (DLSw) is basically a bridging protocol between two SNA Devices (SNA Nodes), where the bridging technology is based on the 802.2 LLC protocol. DLSw protocols provide for local acknowledgment of SNA transmission which suppresses any timing problem due to delays across a wide area infrastructure. DLSw protocols locally insures the retransmission of lost frames, avoiding costly retransmissions across the Wide Area Network (WAN).
As shown in FIG. 1, the SNA message is delivered across three different segments which are (101) the local segment (from source SNA node to source DLSw node 1), (102) the segment across the WAN connection between two DLSw nodes (from DLSw node 1 to DLSw node 2 across the NBBS network) and finally, (103) the remote segment (between DLSw node 2 and far end destination SNA Node).
Communication between DLSw nodes is provided through a Switch to Switch Protocol (SSP). The SSP protocol does not provide full routing, but instead, provides switching at the SNA data link layer (layer 2) and encapsulation within TCP/IP for the transport over the wide area network. Each SDLC (Synchronous Data Link Control) Physical Unit (PU, 104 and 105) is presented to the SSP protocol (106) as a unique MAC/SAP (Medium Access Control/Service Access Point) address pair. For Token Ring LANs, DLSw appears as a source routing bridge. The main difference between DLSw and bridging is that the DLSw protocol locally terminates the LLC type 2 (and therefore provides best results for the transport of SNA information over long haul networks). Before DLSw based transmission can occur between two DLSw nodes, two TCP connections must be established between these DLSw nodes; one per direction of communication due to the TCP protocol characteristics. Each DLSw node has to maintain a list of all other DLSw capable peers and their status (active/inactive).
The data link switching operations which are described hereunder are first qualified by the DLSws exchanges. Communication between two DLSw nodes is realized via two kind of messages which are the Control messages (with a 72-bytes header), and the Information messages (with a 16-bytes header). A TCP (Transmission Control Protocol) session will be established between the two DLSw nodes, to exchange these messages. The communication will be assured by the management of the parameters dedicated to SNA, DLSw and transport resources identification.
For the SNA identification parameters, a data link is identified by a Data Link ID (14 bytes) comprising the pair of attachment addresses. Each attachment address is represented by the concatenation of a MAC address (6 bytes wide) with a Service Access Point identificator (1 byte wide).
For the DLSw parameters, the global end-to-end circuit, inside the SSP control header, is identified by a pair (origin and destination) of Circuit ID (64 bits consisting in a DLC Port ID—4 bytes—and a Data Link Correlator—4 bytes). The local use and contents of the Data Link Correlator and Port ID fields in SSP messages are defined locally. A Circuit ID value identifies a logical communication resource in a DLSw node.
For the Transport parameters, the transport ID fields should be learned from the first SSP messages exchanged with a DLSw partner (the capabilities exchange).
DLSw frames comprise two types of frames used to establish the connection which are the explorer frame whose mission is to determine the topology and the circuit-start frame whose goal is to start the connection to allow for meaningful transmission of SNA data traffic.
The broadcast of a DLSw explorer frame (the names of such explorer messages are terminated by the characters _ex) is triggered by the reception of a SNA test frame comprising a broadcast Exchange Identifier (XID). The source DLSw node either scans its cache or transmits an explorer frame to look for the specified destination SNA node. The cache option, described in the DLSw standard, is the possibility to maintain within a DLSw node, a table giving all the known SNA MAC/SAP address pairs, with the next DLSw nodes to access these MAC/SAP address pairs. This option reduces the quantity of broadcasted messages across the network. When the cache is not used or does not contain the required information, the source DLSw node sends a DLSw CANUREACH_ex frame to find a remote MAC and link SAP address. After reception by the source DLSw node of an ICANREACH_ex frame, a directed DLSw circuit start (CANUREACH_cs) frame (201) is sent to the target DLSw node. The sequence of frames needed to open a connection between the two DLSws nodes is illustrated in FIG. 2. The target DLSw starts a Data Link for each port (ICANREACH_cs 202) and thereby obtains a Data Link Correlator. The exchanges (203 to 206) according to DLSw protocols will be done with keeping the same group of data (Data link ID/MAC-SAP, Origin CID, Target CID). After these steps, SNA information traffic can flow (207 and 208) between the source and target DLSw nodes.
For the data link switching protocol a management function appears necessary at least because among the problems addressed by DLSw, are the potential time-outs caused to the SNA protocols crossing a Wide Area Network (WAN). SNA is a session oriented protocol and uses, for example, fixed protocol timers between adjacent SNA nodes in order to detect any loss of frame. DLSws provides acknowledgment of a frame at the local interface before the frame actually reaches the next hop, at the far end of the Wide Area Network. In this case, there is no way of informing the originator, that a frame has not actually reached its destination. The SNA architecture provides flow control at the link layer. The IP architecture, on the other hand, does not offer the same type of control. To solve that impairment of technologies, DLSw supports a flow control procedure between nodes based on forward and backward message procedures. DLSw specifies a method for reducing the required broadcast frames and searches throughout the network. By optionally caching information concerning the destination addresses, a DLSw node can respond to a local broadcast search without passing the locate messages to every segment of the network (local and remote segments and segment across the WAN).
Data Link Switching (DLSw) is a rather complex bridging protocol that requires a full implementation of TCP/IP protocol stacks in the nodes implementing the Data Link Switching protocols. Implementing a full set of TCP/IP protocol stacks is not only a complex task but also imply that each Data Link Switching node is in effect a full functionality router with all the complexities and severe overhead caused by router to router protocols that are not really required, just to transport SNA data. As a bridging protocol, the amount of overhead due to broadcast traffic (which in the Data Link Switching case is obtained by sending multiple copies of a “broadcast” message to every other DLSw node within the Wide Area Network) is very high and can very well be a severe problem within large Wide Area Networks (WANs).
It is thus an object of the present invention to provide simplified Data Link Switching-like capabilities to Wide Area Networks such as those using NBBS (Networking BroadBand Services) architecture.
More particularly, it is an object of the present invention to attach SNA devices (all types of SNA nodes) to the Wide Area Network such as NBBS network and therefore to enable meaningful communication across the Wide Area Network using traditional SNA protocols.